home *** CD-ROM | disk | FTP | other *** search
/ Aminet 15 / Aminet 15 - Nov 1996.iso / Aminet / dev / basic / ace24dist.lha / ace24.lha / include / libraries / reqtools.h < prev    next >
C/C++ Source or Header  |  1996-09-10  |  22KB  |  681 lines

  1. #ifndef LIBRARIES_REQTOOLS_H
  2. #define LIBRARIES_REQTOOLS_H
  3. /*
  4. ** reqtools.h for ACE Basic
  5. **
  6. ** Note: Translated to ACE by ConvertC2ACE
  7. **       @ MapMeadow Software, Nils Sjoholm
  8. **
  9. **
  10. ** Date: 09/03/95
  11. **
  12. **
  13. */
  14.  
  15. /*
  16. ** This are the StructPointer defines for reqtools.h
  17. */
  18. #ifndef ReqDefaultsPtr
  19. #define ReqDefaultsPtr ADDRESS
  20. #endif
  21. #ifndef ReqToolsBasePtr
  22. #define ReqToolsBasePtr ADDRESS
  23. #endif
  24. #ifndef ReqToolsPrefsPtr
  25. #define ReqToolsPrefsPtr ADDRESS
  26. #endif
  27. #ifndef rtFileListPtr
  28. #define rtFileListPtr ADDRESS
  29. #endif
  30. #ifndef rtFileRequesterPtr
  31. #define rtFileRequesterPtr ADDRESS
  32. #endif
  33. #ifndef rtFontRequesterPtr
  34. #define rtFontRequesterPtr ADDRESS
  35. #endif
  36. #ifndef rtHandlerInfoPtr
  37. #define rtHandlerInfoPtr ADDRESS
  38. #endif
  39. #ifndef rtReqInfoPtr
  40. #define rtReqInfoPtr ADDRESS
  41. #endif
  42. #ifndef rtScreenModeRequesterPtr
  43. #define rtScreenModeRequesterPtr ADDRESS
  44. #endif
  45. #ifndef rtVolumeEntryPtr
  46. #define rtVolumeEntryPtr ADDRESS
  47. #endif
  48. /*
  49. ** End of StructPointer defines for reqtools.h
  50. */
  51.  
  52.  
  53. #ifndef EXEC_TYPES_H
  54. #include <exec/types.h>
  55. #endif  /* EXEC_TYPES_H */
  56.  
  57. #ifndef EXEC_LISTS_H
  58. #include <exec/lists.h>
  59. #endif  /* EXEC_LISTS_H */
  60.  
  61. #ifndef EXEC_LIBRARIES_H
  62. #include <exec/libraries.h>
  63. #endif  /* EXEC_LIBRARIES_H */
  64.  
  65. #ifndef EXEC_SEMAPHORES_H
  66. #include <exec/semaphores.h>
  67. #endif  /* EXEC_SEMAPHORES_H */
  68.  
  69. #ifndef LIBRARIES_DOS_H
  70. #include <libraries/dos.h>
  71. #endif  /* LIBRARIES_DOS_H */
  72.  
  73. #ifndef LIBRARIES_DOSEXTENS_H
  74. #include <libraries/dosextens.h>
  75. #endif  /* LIBRARIES_DOSEXTENS_H */
  76.  
  77. #ifndef LIBRARIES_DISKFONT_H
  78. #include <libraries/diskfont.h>
  79. #endif  /* LIBRARIES_DISKFONT_H */
  80.  
  81. #ifndef GRAPHICS_TEXT_H
  82. #include <graphics/text.h>
  83. #endif  /* GRAPHICS_TEXT_H */
  84.  
  85. #ifndef UTILITY_TAGITEM_H
  86. #include <utility/tagitem.h>
  87. #endif  /* UTILITY_TAGITEM_H */
  88.  
  89. #define REQTOOLSNAME         "reqtools.library"
  90. #define REQTOOLSVERSION      38&
  91.  
  92. /***********************
  93. *                      *
  94. *     Preferences      *
  95. *                      *
  96. ***********************/
  97.  
  98. #define RTPREF_FILEREQ       0&
  99. #define RTPREF_FONTREQ       1&
  100. #define RTPREF_PALETTEREQ    2&
  101. #define RTPREF_SCREENMODEREQ     3&
  102. #define RTPREF_VOLUMEREQ     4&
  103. #define RTPREF_OTHERREQ      5&
  104. #define RTPREF_NR_OF_REQ     6&
  105.  
  106. STRUCT ReqDefaults  
  107.    LONGINT _Size 
  108.    LONGINT ReqPos 
  109.    SHORTINT LeftOffset 
  110.    SHORTINT TopOffset 
  111.    SHORTINT MinEntries 
  112.    SHORTINT MaxEntries 
  113. END STRUCT 
  114.  
  115. STRUCT ReqToolsPrefs  
  116.    /* Size of preferences (_without_ this field and the semaphore) */
  117.    LONGINT PrefsSize 
  118.    SignalSemaphore PrefsSemaphore 
  119.    /* Start of real preferences */
  120.    LONGINT Flags 
  121.    STRING ReqDefaults0 SIZE 96   /* RTPREF_NR_OF_REQ*16 */
  122. END STRUCT 
  123.  
  124. #define RTPREFS_SIZE \
  125.    (SIZEOF(ReqToolsPrefs) - SIZEOF(SignalSemaphore) - 4)
  126.  
  127. /* Flags */
  128.  
  129. #define RTPRB_DIRSFIRST      0&
  130. #define RTPRF_DIRSFIRST      (1&)
  131. #define RTPRB_DIRSMIXED      1&
  132. #define RTPRF_DIRSMIXED      (2&)
  133. #define RTPRB_IMMSORT        2&
  134. #define RTPRF_IMMSORT        (4&)
  135. #define RTPRB_NOSCRTOFRONT   3&
  136. #define RTPRF_NOSCRTOFRONT   (8&)
  137. #define RTPRB_NOLED      4&
  138. #define RTPRF_NOLED      (16&)
  139. #define RTPRB_DEFAULTFONT    5&
  140. #define RTPRF_DEFAULTFONT    (32&)
  141.  
  142. /***********************
  143. *                      *
  144. *     Library Base     *
  145. *                      *
  146. ***********************/
  147.  
  148. STRUCT ReqToolsBase  
  149.    _Library LibNode 
  150.    BYTE  RTFlags 
  151.    STRING pad SIZE 3  
  152.    ADDRESS SegList 
  153.  
  154.    /* PUBLIC FIELDS */
  155.  
  156.    /* NOTE: Some versions of the Manx C compiler contain a bug so it gets
  157.             confused by the library bases below.  Add the rt_ prefix to the
  158.             _library names to fix the problem (e.g. rt_IntuitionBase). */
  159.  
  160.    /* The following library bases may be read and used by your program */
  161.    IntuitionBasePtr  IntuitionBase 
  162.    GfxBasePtr  GfxBase 
  163.    DosLibraryPtr  DOSBase 
  164.    /* Next two library bases are only (and always) valid on Kickstart 2.0!
  165.       (1.3 version of reqtools also initializes these when run on 2.0) */
  166.    LibraryPtr  GadToolsBase 
  167.    LibraryPtr  UtilityBase 
  168.  
  169.    /* PRIVATE FIELDS,   THESE WILL CHANGE FROM RELEASE TO RELEASE! */
  170.  
  171.    /* The RealOpenCnt is for the buffered AvailFonts feature.  Since
  172.       Kickstart 3.0 offers low memory handlers a release of ReqTools for 3.0
  173.       will _not use this field and start using the normal OpenCnt again. */
  174.    SHORTINT RealOpenCnt 
  175.    SHORTINT AvailFontsLock 
  176.    AvailFontsHeaderPtr  AvailFontsHeader 
  177.    LONGINT FontsAssignType 
  178.    ADDRESS FontsAssignLock 
  179.    AssignListPtr  FontsAssignList 
  180.    ReqToolsPrefs ReqToolsPrefs 
  181.    SHORTINT prefspad 
  182. END STRUCT 
  183.  
  184. /* types of requesters,   for rtAllocRequestA() */
  185. #define RT_FILEREQ       0&
  186. #define RT_REQINFO       1&
  187. #define RT_FONTREQ       2&
  188. /* (V38) */
  189. #define RT_SCREENMODEREQ     3&
  190.  
  191. /***********************
  192. *                      *
  193. *    File requester    *
  194. *                      *
  195. ***********************/
  196.  
  197. /* structure _MUST_ be allocated with rtAllocRequest() */
  198.  
  199. STRUCT rtFileRequester  
  200.    LONGINT ReqPos 
  201.    SHORTINT LeftOffset 
  202.    SHORTINT TopOffset 
  203.    LONGINT Flags 
  204.    /* OBSOLETE IN V38! DON'T USE! */
  205.    HookPtr Hook_
  206.    /* */
  207.    ADDRESS   Dir            /* READ ONLY! Change with rtChangeReqAttrA()! */
  208.    ADDRESS   MatchPat       /* READ ONLY! Change with rtChangeReqAttrA()! */
  209.    /* */
  210.    TextFontPtr  DefaultFont 
  211.    LONGINT WaitPointer 
  212.    /* (V38) */
  213.    LONGINT LockWindow 
  214.    LONGINT ShareIDCMP 
  215.    HookPtr  IntuiMsgFunc 
  216.    SHORTINT reserved1 
  217.    SHORTINT reserved2 
  218.    SHORTINT reserved3 
  219.    SHORTINT ReqHeight       /* READ ONLY!  Use RTFI_Height tag! */
  220.    /* Private data follows! HANDS OFF :-) */
  221. END STRUCT 
  222.  
  223. /* returned by rtFileRequestA() if multiselect is enabled,  
  224.    free _list with rtFreeFileList() */
  225.  
  226. STRUCT rtFileList  
  227.    rtFileListPtr  _Next 
  228.    LONGINT StrLen          /* -1 for directories */
  229.    ADDRESS   _Name 
  230. END STRUCT 
  231.  
  232. /* structure passed to RTFI_FilterFunc callback hook by
  233.    volume requester (see RTFI_VolumeRequest tag) */
  234.  
  235. STRUCT rtVolumeEntry  
  236.    LONGINT _Type            /* DLT_DEVICE or DLT_DIRECTORY */
  237.    ADDRESS   _Name 
  238. END STRUCT 
  239.  
  240. /***********************
  241. *                      *
  242. *    Font requester    *
  243. *                      *
  244. ***********************/
  245.  
  246. /* structure _MUST_ be allocated with rtAllocRequest() */
  247.  
  248. STRUCT rtFontRequester  
  249.    LONGINT ReqPos 
  250.    SHORTINT LeftOffset 
  251.    SHORTINT TopOffset 
  252.    LONGINT Flags 
  253.    /* OBSOLETE IN V38! DON'T USE! */
  254.    HookPtr Hook_
  255.    /* */
  256.    TextAttr Attr      /* READ ONLY! */
  257.    /* */
  258.    TextFontPtr  DefaultFont 
  259.    LONGINT WaitPointer 
  260.    /* (V38) */
  261.    LONGINT LockWindow 
  262.    LONGINT ShareIDCMP 
  263.    HookPtr  IntuiMsgFunc 
  264.    SHORTINT reserved1 
  265.    SHORTINT reserved2 
  266.    SHORTINT reserved3 
  267.    SHORTINT ReqHeight       /* READ ONLY!  Use RTFO_Height tag! */
  268.    /* Private data follows! HANDS OFF :-) */
  269. END STRUCT 
  270.  
  271. /*************************
  272. *                        *
  273. *  ScreenMode requester  *
  274. *                        *
  275. *************************/
  276.  
  277. /* structure _MUST_ be allocated with rtAllocRequest() */
  278.  
  279. STRUCT rtScreenModeRequester  
  280.    LONGINT ReqPos 
  281.    SHORTINT LeftOffset 
  282.    SHORTINT TopOffset 
  283.    LONGINT Flags 
  284.    LONGINT private1 
  285.    /* */
  286.    LONGINT DisplayID       /* READ ONLY! */
  287.    SHORTINT DisplayWidth        /* READ ONLY! */
  288.    SHORTINT DisplayHeight       /* READ ONLY! */
  289.    /* */
  290.    TextFontPtr  DefaultFont 
  291.    LONGINT WaitPointer 
  292.    LONGINT LockWindow 
  293.    LONGINT ShareIDCMP 
  294.    HookPtr  IntuiMsgFunc 
  295.    SHORTINT reserved1 
  296.    SHORTINT reserved2 
  297.    SHORTINT reserved3 
  298.    SHORTINT ReqHeight       /* READ ONLY!  Use RTSC_Height tag! */
  299.    /* */
  300.    SHORTINT DisplayDepth        /* READ ONLY! */
  301.    SHORTINT OverscanType        /* READ ONLY! */
  302.    LONGINT AutoScroll          /* READ ONLY! */
  303.    /* Private data follows! HANDS OFF :-) */
  304. END STRUCT 
  305.  
  306. /***********************
  307. *                      *
  308. *    Requester Info    *
  309. *                      *
  310. ***********************/
  311.  
  312. /* for rtEZRequestA(),   rtGetLongA(),   rtGetStringA() and rtPaletteRequestA(),  
  313.    _MUST_ be allocated with rtAllocRequest() */
  314.  
  315. STRUCT rtReqInfo  
  316.    LONGINT ReqPos 
  317.    SHORTINT LeftOffset 
  318.    SHORTINT TopOffset 
  319.    LONGINT _Width           /* not for rtEZRequestA() */
  320.    ADDRESS   ReqTitle        /* currently only for rtEZRequestA() */
  321.    LONGINT Flags 
  322.    TextFontPtr  DefaultFont  /* currently only for rtPaletteRequestA() */
  323.    LONGINT WaitPointer 
  324.    /* (V38) */
  325.    LONGINT LockWindow 
  326.    LONGINT ShareIDCMP 
  327.    HookPtr  IntuiMsgFunc 
  328.    /* structure may be extended in future */
  329. END STRUCT 
  330.  
  331. /***********************
  332. *                      *
  333. *     Handler Info     *
  334. *                      *
  335. ***********************/
  336.  
  337. /* for rtReqHandlerA(),   will be allocated for you when you use
  338.    the RT_ReqHandler tag,   never try to allocate this yourself! */
  339.  
  340. STRUCT rtHandlerInfo  
  341.    LONGINT private1 
  342.    LONGINT WaitMask 
  343.    LONGINT DoNotWait 
  344.    /* Private data follows,   HANDS OFF :-) */
  345. END STRUCT 
  346.  
  347. /* possible return codes from rtReqHandlerA() */
  348.  
  349. #define CALL_HANDLER         &H80000000&
  350.  
  351.  
  352. /*************************************
  353. *                                    *
  354. *                TAGS                *
  355. *                                    *
  356. *************************************/
  357.  
  358. #define RT_TagBase       TAG_USER
  359.  
  360. /*** tags understood by most requester functions ***
  361. */
  362. /* optional pointer to window */
  363. #define RT_Window        (RT_TagBase+1)
  364. /* idcmp flags requester should abort on (useful for IDCMP_DISKINSERTED) */
  365. #define RT_IDCMPFlags        (RT_TagBase+2)
  366. /* position of requester window (see below) - default REQPOS_POINTER */
  367. #define RT_ReqPos        (RT_TagBase+3)
  368. /* leftedge offset of requester relative to position specified by RT_ReqPos */
  369. #define RT_LeftOffset        (RT_TagBase+4)
  370. /* topedge offset of requester relative to position specified by RT_ReqPos */
  371. #define RT_TopOffset         (RT_TagBase+5)
  372. /* name of public screen to put requester on (Kickstart 2.0 only!) */
  373. #define RT_PubScrName        (RT_TagBase+6)
  374. /* address of screen to put requester on */
  375. #define RT_Screen        (RT_TagBase+7)
  376. /* tagdata must hold the address of (!) an ADDRESS variable */
  377. #define RT_ReqHandler        (RT_TagBase+8)
  378. /* font to use when screen font is rejected,   _MUST_ be fixed-width font!
  379.    (STRUCT TextFont *,   not STRUCT TextAttr *!)
  380.    - default GfxBase->DefaultFont */
  381. #define RT_DefaultFont       (RT_TagBase+9)
  382. /* boolean to set the standard wait pointer in window - default FALSE */
  383. #define RT_WaitPointer       (RT_TagBase+10)
  384. /* (V38) BYTE preceding keyboard shortcut characters (will be underlined) */
  385. #define RT_Underscore        (RT_TagBase+11)
  386. /* (V38) share IDCMP port with window - default FALSE */
  387. #define RT_ShareIDCMP        (RT_TagBase+12)
  388. /* (V38) lock window and set standard wait pointer - default FALSE */
  389. #define RT_LockWindow        (RT_TagBase+13)
  390. /* (V38) boolean to make requester's screen pop to front - default TRUE */
  391. #define RT_ScreenToFront     (RT_TagBase+14)
  392. /* (V38) Requester should use this font - default: screen font */
  393. #define RT_TextAttr      (RT_TagBase+15)
  394. /* (V38) call this hook for every IDCMP message not for requester */
  395. #define RT_IntuiMsgFunc      (RT_TagBase+16)
  396. /* (V38) Locale ReqTools should use for text */
  397. #define RT_Locale        (RT_TagBase+17)
  398.  
  399. /*** tags specific to rtEZRequestA ***
  400. */
  401. /* title of requester window - english default "Request" or "Information" */
  402. #define RTEZ_ReqTitle        (RT_TagBase+20)
  403. /* (RT_TagBase+21) reserved */
  404. /* various flags (see below) */
  405. #define RTEZ_Flags       (RT_TagBase+22)
  406. /* default response (activated by pressing RETURN) - default TRUE */
  407. #define RTEZ_DefaultResponse     (RT_TagBase+23)
  408.  
  409. /*** tags specific to rtGetLongA ***
  410. */
  411. /* minimum allowed value - default MININT */
  412. #define RTGL_Min         (RT_TagBase+30)
  413. /* maximum allowed value - default MAXINT */
  414. #define RTGL_Max         (RT_TagBase+31)
  415. /* suggested width of requester window (in pixels) */
  416. #define RTGL_Width       (RT_TagBase+32)
  417. /* boolean to show the default value - default TRUE */
  418. #define RTGL_ShowDefault     (RT_TagBase+33)
  419. /* (V38) string with possible responses - english default " _Ok |_Cancel" */
  420. #define RTGL_GadFmt          (RT_TagBase+34)
  421. /* (V38) optional arguments for RTGL_GadFmt */
  422. #define RTGL_GadFmtArgs      (RT_TagBase+35)
  423. /* (V38) invisible typing - default FALSE */
  424. #define RTGL_Invisible       (RT_TagBase+36)
  425. /* (V38) window backfill - default TRUE */
  426. #define RTGL_BackFill        (RT_TagBase+37)
  427. /* (V38) optional text above gadget */
  428. #define RTGL_TextFmt         (RT_TagBase+38)
  429. /* (V38) optional arguments for RTGS_TextFmt */
  430. #define RTGL_TextFmtArgs     (RT_TagBase+39)
  431. /* (V38) various flags (see below) */
  432. #define RTGL_Flags       RTEZ_Flags
  433.  
  434. /*** tags specific to rtGetStringA ***
  435. */
  436. /* suggested width of requester window (in pixels) */
  437. #define RTGS_Width       RTGL_Width
  438. /* allow empty string to be accepted - default FALSE */
  439. #define RTGS_AllowEmpty      (RT_TagBase+80)
  440. /* (V38) string with possible responses - english default " _Ok |_Cancel" */
  441. #define RTGS_GadFmt          RTGL_GadFmt
  442. /* (V38) optional arguments for RTGS_GadFmt */
  443. #define RTGS_GadFmtArgs      RTGL_GadFmtArgs
  444. /* (V38) invisible typing - default FALSE */
  445. #define RTGS_Invisible       RTGL_Invisible
  446. /* (V38) window backfill - default TRUE */
  447. #define RTGS_BackFill        RTGL_BackFill
  448. /* (V38) optional text above gadget */
  449. #define RTGS_TextFmt         RTGL_TextFmt
  450. /* (V38) optional arguments for RTGS_TextFmt */
  451. #define RTGS_TextFmtArgs     RTGL_TextFmtArgs
  452. /* (V38) various flags (see below) */
  453. #define RTGS_Flags       RTEZ_Flags
  454.  
  455. /*** tags specific to rtFileRequestA ***
  456. */
  457. /* various flags (see below) */
  458. #define RTFI_Flags       (RT_TagBase+40)
  459. /* suggested height of file requester */
  460. #define RTFI_Height      (RT_TagBase+41)
  461. /* replacement text for 'Ok' gadget (max 6 chars) */
  462. #define RTFI_OkText      (RT_TagBase+42)
  463. /* (V38) bring up volume requester,   tag data holds flags (see below) */
  464. #define RTFI_VolumeRequest   (RT_TagBase+43)
  465. /* (V38) call this hook for every file in the directory */
  466. #define RTFI_FilterFunc      (RT_TagBase+44)
  467. /* (V38) allow empty file to be accepted - default FALSE */
  468. #define RTFI_AllowEmpty      (RT_TagBase+45)
  469.  
  470. /*** tags specific to rtFontRequestA ***
  471. */
  472. /* various flags (see below) */
  473. #define RTFO_Flags       RTFI_Flags
  474. /* suggested height of font requester */
  475. #define RTFO_Height      RTFI_Height
  476. /* replacement text for 'Ok' gadget (max 6 chars) */
  477. #define RTFO_OkText      RTFI_OkText
  478. /* suggested height of font sample display - default 24 */
  479. #define RTFO_SampleHeight    (RT_TagBase+60)
  480. /* minimum height of font displayed */
  481. #define RTFO_MinHeight       (RT_TagBase+61)
  482. /* maximum height of font displayed */
  483. #define RTFO_MaxHeight       (RT_TagBase+62)
  484. /* [(RT_TagBase+63) to (RT_TagBase+66) used below] */
  485. /* (V38) call this hook for every font */
  486. #define RTFO_FilterFunc      RTFI_FilterFunc
  487.  
  488. /*** (V38) tags for rtScreenModeRequestA ***
  489. */
  490. /* various flags (see below) */
  491. #define RTSC_Flags       RTFI_Flags
  492. /* suggested height of screenmode requester */
  493. #define RTSC_Height      RTFI_Height
  494. /* replacement text for 'Ok' gadget (max 6 chars) */
  495. #define RTSC_OkText      RTFI_OkText
  496. /* property flags (see also RTSC_PropertyMask) */
  497. #define RTSC_PropertyFlags   (RT_TagBase+90)
  498. /* property mask - default all bits in RTSC_PropertyFlags considered */
  499. #define RTSC_PropertyMask    (RT_TagBase+91)
  500. /* minimum display width allowed */
  501. #define RTSC_MinWidth        (RT_TagBase+92)
  502. /* maximum display width allowed */
  503. #define RTSC_MaxWidth        (RT_TagBase+93)
  504. /* minimum display height allowed */
  505. #define RTSC_MinHeight       (RT_TagBase+94)
  506. /* maximum display height allowed */
  507. #define RTSC_MaxHeight       (RT_TagBase+95)
  508. /* minimum display depth allowed */
  509. #define RTSC_MinDepth        (RT_TagBase+96)
  510. /* maximum display depth allowed */
  511. #define RTSC_MaxDepth        (RT_TagBase+97)
  512. /* call this hook for every display mode id */
  513. #define RTSC_FilterFunc      RTFI_FilterFunc
  514.  
  515. /*** tags for rtChangeReqAttrA ***
  516. */
  517. /* file requester - set directory */
  518. #define RTFI_Dir         (RT_TagBase+50)
  519. /* file requester - set wildcard pattern */
  520. #define RTFI_MatchPat        (RT_TagBase+51)
  521. /* file requester - add a file or directory to the buffer */
  522. #define RTFI_AddEntry        (RT_TagBase+52)
  523. /* file requester - remove a file or directory from the buffer */
  524. #define RTFI_RemoveEntry     (RT_TagBase+53)
  525. /* font requester - set font name of selected font */
  526. #define RTFO_FontName        (RT_TagBase+63)
  527. /* font requester - set font size */
  528. #define RTFO_FontHeight      (RT_TagBase+64)
  529. /* font requester - set font style */
  530. #define RTFO_FontStyle       (RT_TagBase+65)
  531. /* font requester - set font flags */
  532. #define RTFO_FontFlags       (RT_TagBase+66)
  533. /* (V38) screenmode requester - get display attributes from screen */
  534. #define RTSC_ModeFromScreen  (RT_TagBase+80)
  535. /* (V38) screenmode requester - set display mode id (32-bit extended) */
  536. #define RTSC_DisplayID       (RT_TagBase+81)
  537. /* (V38) screenmode requester - set display width */
  538. #define RTSC_DisplayWidth    (RT_TagBase+82)
  539. /* (V38) screenmode requester - set display height */
  540. #define RTSC_DisplayHeight   (RT_TagBase+83)
  541. /* (V38) screenmode requester - set display depth */
  542. #define RTSC_DisplayDepth    (RT_TagBase+84)
  543. /* (V38) screenmode requester - set overscan type,   0 for regular size */
  544. #define RTSC_OverscanType    (RT_TagBase+85)
  545. /* (V38) screenmode requester - set autoscroll */
  546. #define RTSC_AutoScroll      (RT_TagBase+86)
  547.  
  548. /*** tags for rtPaletteRequestA ***
  549. */
  550. /* initially selected color - default 1 */
  551. #define RTPA_Color       (RT_TagBase+70)
  552.  
  553. /*** tags for rtReqHandlerA ***
  554. */
  555. /* end requester by software control,   set tagdata to REQ_CANCEL,   REQ_OK or
  556.    in _case of rtEZRequest to the return value */
  557. #define RTRH_EndRequest      (RT_TagBase+60)
  558.  
  559. /*** tags for rtAllocRequestA ***/
  560. /* no tags defined yet */
  561.  
  562.  
  563. /************
  564. * RT_ReqPos *
  565. ************/
  566. #define REQPOS_POINTER       0&
  567. #define REQPOS_CENTERWIN     1&
  568. #define REQPOS_CENTERSCR     2&
  569. #define REQPOS_TOPLEFTWIN    3&
  570. #define REQPOS_TOPLEFTSCR    4&
  571.  
  572. /******************
  573. * RTRH_EndRequest *
  574. ******************/
  575. #define REQ_CANCEL       0&
  576. #define REQ_OK           1&
  577.  
  578. /***************************************
  579. * flags for RTFI_Flags and RTFO_Flags  *
  580. * or filereq->Flags and fontreq->Flags *
  581. ***************************************/
  582. #define FREQB_NOBUFFER       2&
  583. #define FREQF_NOBUFFER       (4&)
  584.  
  585. /*****************************************
  586. * flags for RTFI_Flags or filereq->Flags *
  587. *****************************************/
  588. #define FREQB_MULTISELECT    0&
  589. #define FREQF_MULTISELECT    (1&)
  590. #define FREQB_SAVE       1&
  591. #define FREQF_SAVE       (2&)
  592. #define FREQB_NOFILES        3&
  593. #define FREQF_NOFILES        (8&)
  594. #define FREQB_PATGAD         4&
  595. #define FREQF_PATGAD         (16&)
  596. #define FREQB_SELECTDIRS     12&
  597. #define FREQF_SELECTDIRS     (4096&)
  598.  
  599. /*****************************************
  600. * flags for RTFO_Flags or fontreq->Flags *
  601. *****************************************/
  602. #define FREQB_FIXEDWIDTH     5&
  603. #define FREQF_FIXEDWIDTH     (32&)
  604. #define FREQB_COLORFONTS     6&
  605. #define FREQF_COLORFONTS     (64&)
  606. #define FREQB_CHANGEPALETTE  7&
  607. #define FREQF_CHANGEPALETTE  (128&)
  608. #define FREQB_LEAVEPALETTE   8&
  609. #define FREQF_LEAVEPALETTE   (256&)
  610. #define FREQB_SCALE      9&
  611. #define FREQF_SCALE      (512&)
  612. #define FREQB_STYLE      10&
  613. #define FREQF_STYLE      (1024&)
  614.  
  615. /*****************************************************
  616. * (V38) flags for RTSC_Flags or screenmodereq->Flags *
  617. *****************************************************/
  618. #define SCREQB_SIZEGADS      13&
  619. #define SCREQF_SIZEGADS      (8192&)
  620. #define SCREQB_DEPTHGAD      14&
  621. #define SCREQF_DEPTHGAD      (16384&)
  622. #define SCREQB_NONSTDMODES   15&
  623. #define SCREQF_NONSTDMODES   (32768&)
  624. #define SCREQB_GUIMODES      16&
  625. #define SCREQF_GUIMODES      (65536&)
  626. #define SCREQB_AUTOSCROLLGAD     18&
  627. #define SCREQF_AUTOSCROLLGAD     (262144&)
  628. #define SCREQB_OVERSCANGAD   19&
  629. #define SCREQF_OVERSCANGAD   (524288&)
  630.  
  631. /*****************************************
  632. * flags for RTEZ_Flags or reqinfo->Flags *
  633. *****************************************/
  634. #define EZREQB_NORETURNKEY   0&
  635. #define EZREQF_NORETURNKEY   (1&)
  636. #define EZREQB_LAMIGAQUAL    1&
  637. #define EZREQF_LAMIGAQUAL    (2&)
  638. #define EZREQB_CENTERTEXT    2&
  639. #define EZREQF_CENTERTEXT    (4&)
  640.  
  641. /***********************************************
  642. * (V38) flags for RTGL_Flags or reqinfo->Flags *
  643. ***********************************************/
  644. #define GLREQB_CENTERTEXT    EZREQB_CENTERTEXT
  645. #define GLREQF_CENTERTEXT    EZREQF_CENTERTEXT
  646. #define GLREQB_HIGHLIGHTTEXT     3&
  647. #define GLREQF_HIGHLIGHTTEXT     (8&)
  648.  
  649. /***********************************************
  650. * (V38) flags for RTGS_Flags or reqinfo->Flags *
  651. ***********************************************/
  652. #define GSREQB_CENTERTEXT    EZREQB_CENTERTEXT
  653. #define GSREQF_CENTERTEXT    EZREQF_CENTERTEXT
  654. #define GSREQB_HIGHLIGHTTEXT     GLREQB_HIGHLIGHTTEXT
  655. #define GSREQF_HIGHLIGHTTEXT     GLREQF_HIGHLIGHTTEXT
  656.  
  657. /*****************************************
  658. * (V38) flags for RTFI_VolumeRequest tag *
  659. *****************************************/
  660. #define VREQB_NOASSIGNS      0&
  661. #define VREQF_NOASSIGNS      (1&)
  662. #define VREQB_NODISKS        1&
  663. #define VREQF_NODISKS        (2&)
  664. #define VREQB_ALLDISKS       2&
  665. #define VREQF_ALLDISKS       (4&)
  666.  
  667. /*
  668.    Following things are obsolete in ReqTools V38.
  669.    DON'T USE THESE IN NEW CODE!
  670. */
  671. #ifndef NO_REQTOOLS_OBSOLETE
  672. #define REQHOOK_WILDFILE 0&
  673. #define REQHOOK_WILDFONT 1&
  674. #define FREQB_DOWILDFUNC 11&
  675. #define FREQF_DOWILDFUNC (2048&)
  676. #endif
  677.  
  678.  
  679.  
  680. #endif /* LIBRARIES_REQTOOLS_H */
  681.